package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.MoBank;

import java.util.*;
public class MoBankExample extends SgExample<MoBankExample.Criteria> {
    public static final Class<MoBank> beanClass = MoBank.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn imgIcon;
    public static EntityColumn bankId;
    public static EntityColumn simpleName;
    public static EntityColumn useFor;
    public static EntityColumn bankName;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        imgIcon = listMap.get("imgIcon");
        bankId = listMap.get("bankId");
        simpleName = listMap.get("simpleName");
        useFor = listMap.get("useFor");
        bankName = listMap.get("bankName");
        }

    public MoBankExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected MoBankExample.Criteria createCriteriaInternal() {
        return new MoBankExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public MoBankExample.Criteria andImgIconIsNull() {
            return isNull(imgIcon);
        }

        public MoBankExample.Criteria andImgIconIsNotNull() {
            return isNotNull(imgIcon);
        }

        public MoBankExample.Criteria andImgIconEqualTo(String value) {
            return equalTo(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconNotEqualTo(String value) {
            return notEqualTo(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconGreaterThan(String value) {
            return greaterThan(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconLessThan(String value) {
            return lessThan(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconLike(String value) {
            return like(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconNotLike(String value) {
            return notLike(imgIcon, value);
        }

        public MoBankExample.Criteria andImgIconIn(List<String> values) {
            return in(imgIcon, values);
        }

        public MoBankExample.Criteria andImgIconNotIn(List<String> values) {
            return notIn(imgIcon, values);
        }

        public MoBankExample.Criteria andImgIconBetween(String value1, String value2) {
            return between(imgIcon, value1, value2);
        }

        public MoBankExample.Criteria andImgIconNotBetween(String value1, String value2) {
            return notBetween(imgIcon, value1, value2);
        }
        public MoBankExample.Criteria andBankIdIsNull() {
            return isNull(bankId);
        }

        public MoBankExample.Criteria andBankIdIsNotNull() {
            return isNotNull(bankId);
        }

        public MoBankExample.Criteria andBankIdEqualTo(Long value) {
            return equalTo(bankId, value);
        }

        public MoBankExample.Criteria andBankIdNotEqualTo(Long value) {
            return notEqualTo(bankId, value);
        }

        public MoBankExample.Criteria andBankIdGreaterThan(Long value) {
            return greaterThan(bankId, value);
        }

        public MoBankExample.Criteria andBankIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(bankId, value);
        }

        public MoBankExample.Criteria andBankIdLessThan(Long value) {
            return lessThan(bankId, value);
        }

        public MoBankExample.Criteria andBankIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(bankId, value);
        }

        public MoBankExample.Criteria andBankIdIn(List<Long> values) {
            return in(bankId, values);
        }

        public MoBankExample.Criteria andBankIdNotIn(List<Long> values) {
            return notIn(bankId, values);
        }

        public MoBankExample.Criteria andBankIdBetween(Long value1, Long value2) {
            return between(bankId, value1, value2);
        }

        public MoBankExample.Criteria andBankIdNotBetween(Long value1, Long value2) {
            return notBetween(bankId, value1, value2);
        }
        public MoBankExample.Criteria andSimpleNameIsNull() {
            return isNull(simpleName);
        }

        public MoBankExample.Criteria andSimpleNameIsNotNull() {
            return isNotNull(simpleName);
        }

        public MoBankExample.Criteria andSimpleNameEqualTo(String value) {
            return equalTo(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameNotEqualTo(String value) {
            return notEqualTo(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameGreaterThan(String value) {
            return greaterThan(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameLessThan(String value) {
            return lessThan(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameLike(String value) {
            return like(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameNotLike(String value) {
            return notLike(simpleName, value);
        }

        public MoBankExample.Criteria andSimpleNameIn(List<String> values) {
            return in(simpleName, values);
        }

        public MoBankExample.Criteria andSimpleNameNotIn(List<String> values) {
            return notIn(simpleName, values);
        }

        public MoBankExample.Criteria andSimpleNameBetween(String value1, String value2) {
            return between(simpleName, value1, value2);
        }

        public MoBankExample.Criteria andSimpleNameNotBetween(String value1, String value2) {
            return notBetween(simpleName, value1, value2);
        }
        public MoBankExample.Criteria andUseForIsNull() {
            return isNull(useFor);
        }

        public MoBankExample.Criteria andUseForIsNotNull() {
            return isNotNull(useFor);
        }

        public MoBankExample.Criteria andUseForEqualTo(Integer value) {
            return equalTo(useFor, value);
        }

        public MoBankExample.Criteria andUseForNotEqualTo(Integer value) {
            return notEqualTo(useFor, value);
        }

        public MoBankExample.Criteria andUseForGreaterThan(Integer value) {
            return greaterThan(useFor, value);
        }

        public MoBankExample.Criteria andUseForGreaterThanOrEqualTo(Integer value) {
            return greaterThanOrEqualTo(useFor, value);
        }

        public MoBankExample.Criteria andUseForLessThan(Integer value) {
            return lessThan(useFor, value);
        }

        public MoBankExample.Criteria andUseForLessThanOrEqualTo(Integer value) {
            return lessThanOrEqualTo(useFor, value);
        }

        public MoBankExample.Criteria andUseForIn(List<Integer> values) {
            return in(useFor, values);
        }

        public MoBankExample.Criteria andUseForNotIn(List<Integer> values) {
            return notIn(useFor, values);
        }

        public MoBankExample.Criteria andUseForBetween(Integer value1, Integer value2) {
            return between(useFor, value1, value2);
        }

        public MoBankExample.Criteria andUseForNotBetween(Integer value1, Integer value2) {
            return notBetween(useFor, value1, value2);
        }
        public MoBankExample.Criteria andBankNameIsNull() {
            return isNull(bankName);
        }

        public MoBankExample.Criteria andBankNameIsNotNull() {
            return isNotNull(bankName);
        }

        public MoBankExample.Criteria andBankNameEqualTo(String value) {
            return equalTo(bankName, value);
        }

        public MoBankExample.Criteria andBankNameNotEqualTo(String value) {
            return notEqualTo(bankName, value);
        }

        public MoBankExample.Criteria andBankNameGreaterThan(String value) {
            return greaterThan(bankName, value);
        }

        public MoBankExample.Criteria andBankNameGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(bankName, value);
        }

        public MoBankExample.Criteria andBankNameLessThan(String value) {
            return lessThan(bankName, value);
        }

        public MoBankExample.Criteria andBankNameLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(bankName, value);
        }

        public MoBankExample.Criteria andBankNameLike(String value) {
            return like(bankName, value);
        }

        public MoBankExample.Criteria andBankNameNotLike(String value) {
            return notLike(bankName, value);
        }

        public MoBankExample.Criteria andBankNameIn(List<String> values) {
            return in(bankName, values);
        }

        public MoBankExample.Criteria andBankNameNotIn(List<String> values) {
            return notIn(bankName, values);
        }

        public MoBankExample.Criteria andBankNameBetween(String value1, String value2) {
            return between(bankName, value1, value2);
        }

        public MoBankExample.Criteria andBankNameNotBetween(String value1, String value2) {
            return notBetween(bankName, value1, value2);
        }
    }
}